package com.shujia.scala

import java.util

object Demo12Map {
  def main(args: Array[String]): Unit = {

    /**
      * map   kv 格式
      *
      */

    // ->  是一个方法   灰灰一个二元组

    //不可变map
    val map = Map(("001", "张三"), "002" -> "李四")


    //遍历map   每一个元素是一个二元组
    map.foreach(t => {
      val key = t._1
      val value = t._2
      println(key + "\t" + value)
    })


    //get 方法返回一个option
    val value = map.get("001")

    //取出option中的数据
    println(value.get)

    //通过key获去value
    println(map("002"))

    //getOrElse   如果ley不存在 返回默认值
    println(map.getOrElse("003", "默认值"))


    //增加一个元素  返回一个新的map
    val map1 = map.+(("003", "王五"))

    println(map)
    println(map1)

    println(map.keys)
    println(map.values)
    println(map.contains("001"))


    /**
      * 可变map
      *
      */

    import scala.collection.mutable

    val map2 = mutable.Map[String, Int]()

    map2.put("张三", 23)
    map2.put("李四", 23)
    map2.put("王五", 25)


    println(map2.getOrElse("张三", 1))


  }

}
